package models.domain;

import java.util.Date;
import java.util.List;

/**
 * Created with IntelliJ IDEA.
 * User: kristborga
 * Date: 28.2.2013
 * Time: 15:57
 * To change this template use File | Settings | File Templates.
 */
public class Project {
    protected String name;
    protected Double grade;
    protected Double weight;
    protected String course;
    protected Boolean handedIn;
    protected String beginDate;
    protected String handInDate;
    protected Date beginDateFormat;
    protected Date handinDateFormat;
    protected String type;
    protected Integer verkefni_id;
    protected Integer verkefniNemenda_id;
    protected String athugasemdFraKennara;
    protected List<Project> openProjects;
    protected List<Project> closedProjects;
    protected int afangi_id;
    protected int hopur_id;



    protected Boolean gradePublished;

    public Project(int afangi_id, List<Project> closedProjects, List<Project> openProjects) {
        this.afangi_id = afangi_id;
        this.closedProjects = closedProjects;
        this.openProjects = openProjects;
    }
    public Project(int afangi_id, int hopur_id,List<Project> closedProjects, List<Project> openProjects) {
        this.afangi_id = afangi_id;
        this.hopur_id = hopur_id;
        this.closedProjects = closedProjects;
        this.openProjects = openProjects;
    }

    public Project(String name, int afangi_id, Date beginDateFormat, Date handinDateFormat, Double weight, Double grade, int verkefni_id, String type) {
        this.name = name;
        this.afangi_id = afangi_id;
        this.beginDateFormat = beginDateFormat;
        this.handinDateFormat = handinDateFormat;
        this.weight = weight;
        this.grade = grade;
        this.verkefni_id = verkefni_id;
        this.type = type;
    }
    public Project(String name, Double vaegi, String tegund, Integer verkefni_id, Integer afangi_id){
        this.name = name;
        this.weight = vaegi;
        this.type = tegund;
        this.verkefni_id = verkefni_id;
        this.afangi_id = afangi_id;
    }
    public Project(String name, Double grade, Double weight, String course, boolean handedIn, String beginDate, String handInDate,String type, Integer verkefni_id, Integer hopur_id,Date handinDateFormat){
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.course = course;
        this.handedIn = handedIn;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.type = type;
        this.verkefni_id = verkefni_id;
        this.hopur_id = hopur_id;
        this.handinDateFormat = handinDateFormat;
    }
    public Project(String name, Integer afangi_id,Date beginDateFormat, Date handinDateFormat,Double weight, Integer verkefni_id, String type, Integer hopur_id){
        this.name = name;
        this.afangi_id = afangi_id;
        this.beginDateFormat = beginDateFormat;
        this.handinDateFormat = handinDateFormat;
        this.weight = weight;
        this.verkefni_id = verkefni_id;
        this.type = type;
        this.hopur_id = hopur_id;

    }

    public Project(String name, int afangi_id, String beginDate, String handInDate,Double weight, Integer verkefni_id,String type) {
        this.name = name;
        this.weight = weight;
        this.afangi_id = afangi_id;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.type = type;
        this.verkefni_id = verkefni_id;
    }

    public Project(String name, Double grade, Double weight, int afangi_id, Boolean handedIn, String beginDate, String handInDate, String type, Integer verkefni_id) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.afangi_id = afangi_id;
        this.handedIn = handedIn;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.type = type;
        this.verkefni_id = verkefni_id;
    }
    public Project(String name, Double grade, Double weight, String course,Boolean handedIn, String beginDate, String handInDate, String type, Integer verkefni_id, Date handinDateFormat) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.course = course;
        this.handedIn = handedIn;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.type = type;
        this.verkefni_id = verkefni_id;
        this.handinDateFormat = handinDateFormat;
    }
    public Project(String name, Double grade, Double weight, String course,Boolean handedIn, String beginDate, String handInDate, String type, Integer verkefni_id, Date handinDateFormat, Integer hopur_id) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.course = course;
        this.handedIn = handedIn;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.type = type;
        this.verkefni_id = verkefni_id;
        this.handinDateFormat = handinDateFormat;
        this.hopur_id = hopur_id;
    }

    public Project(String name, Double grade, Double weight, String course, Boolean handedIn, String beginDate, String handInDate, String type, Integer verkefni_id) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.course = course;
        this.handedIn = handedIn;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.type = type;
        this.verkefni_id = verkefni_id;
    }

    public Project(String name, Double grade, Double weight, String course, Boolean handedIn, String type, Integer verkefni_id) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.course = course;
        this.handedIn = handedIn;
        this.type = type;
        this.verkefni_id = verkefni_id;
    }

    public Project(String name, Double grade, Double weight, String beginDate, String handInDate, Integer verkefni_id, boolean handedIn) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.handedIn = handedIn;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.verkefni_id = verkefni_id;
    }
    public Project(String name, Double grade, Double weight, String beginDate, String handInDate, Integer verkefni_id, boolean handedIn, Integer verkefniNemenda_id) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.handedIn = handedIn;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.verkefni_id = verkefni_id;
        this.verkefniNemenda_id = verkefniNemenda_id;
    }

    public Project(String name, Double grade, Double weight, String beginDate, String handInDate, Integer verkefni_id, boolean handedIn, Integer verkefniNemenda_id, String athugasemd) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.handedIn = handedIn;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.verkefni_id = verkefni_id;
        this.verkefniNemenda_id = verkefniNemenda_id;
        this.athugasemdFraKennara = athugasemd;
    }
    public Project(String name, Double grade, Double weight, String beginDate, String handInDate, Integer verkefni_id, boolean handedIn, Integer verkefniNemenda_id, String athugasemd, String tegund) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.handedIn = handedIn;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.verkefni_id = verkefni_id;
        this.verkefniNemenda_id = verkefniNemenda_id;
        this.athugasemdFraKennara = athugasemd;
        this.type= tegund;
    }

    public Project() {
    }

    public Project(String name, Double grade, Double weight, String course, Boolean handedIn, String beginDate, String handInDate, String type) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.course = course;
        this.handedIn = handedIn;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.type = type;
    }

    public Project(String name, Double grade, Double weight, String course, Boolean handedIn, String handInDate, String type) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.course = course;
        this.handedIn = handedIn;
        this.handInDate = handInDate;
        this.type = type;
    }

    public Project(String name, Double grade, Double weight, String course, Boolean handedIn, String handInDate, String type, int verkefni_id) {
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.course = course;
        this.handedIn = handedIn;
        this.handInDate = handInDate;
        this.type = type;
        this.verkefni_id = verkefni_id;
    }

    public Project(String name, Double weight, String course, String beginDate, String handInDate, String type, int verkefni_id) {
        this.name = name;
        this.weight = weight;
        this.course = course;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.type = type;
        this.verkefni_id = verkefni_id;
    }

    public Project(String name, Double grade, Double weight, String beginDate, String handInDate, int verkefni_id,
                   boolean gradePublished, int verkefniNemenda_id, Boolean handedIn, String type, String athugasemdFraKennara){
        this.name = name;
        this.grade = grade;
        this.weight = weight;
        this.beginDate = beginDate;
        this.handInDate = handInDate;
        this.verkefni_id = verkefni_id;
        this.gradePublished = gradePublished;
        this.verkefniNemenda_id = verkefniNemenda_id;
        this.handedIn = handedIn;
        this.type = type;
        this.athugasemdFraKennara = athugasemdFraKennara;
    }



    //String name, Double grade, Double weight, String course, Boolean handedIn, String beginDate, String handInDate, String type, Integer verkefni_id

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Double getGrade() {
        return grade;
    }

    public void setGrade(Double grade) {
        this.grade = grade;
    }

    public Double getWeight() {
        return weight;
    }

    public void setWeight(Double weight) {
        this.weight = weight;
    }

    public String getCourse() {
        return course;
    }

    public void setCourse(String course) {
        this.course = course;
    }

    public String getbeginDate() {
        return beginDate;
    }

    public void setbeginDate(String beginDate) {
        this.beginDate = beginDate;
    }

    public Boolean getHandedIn() {
        return handedIn;
    }

    public void setHandedIn(Boolean handedIn) {
        this.handedIn = handedIn;
    }

    public String getHandInDate() {
        return handInDate;
    }

    public void setHandInDate(String handInDate) {
        this.handInDate = handInDate;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getBeginDate() {
        return beginDate;
    }

    public void setBeginDate(String beginDate) {
        this.beginDate = beginDate;
    }

    public Integer getVerkefni_id() {
        return verkefni_id;
    }

    public void setVerkefni_id(Integer verkefni_id) {
        this.verkefni_id = verkefni_id;
    }

    public Integer getVerkefniNemenda_id() {
        return verkefniNemenda_id;
    }

    public void setVerkefniNemenda_id(Integer verkefniNemenda_id) {
        this.verkefniNemenda_id = verkefniNemenda_id;
    }

    public String getAthugasemdFraKennara() {
        return athugasemdFraKennara;
    }

    public void setAthugasemdFraKennara(String athugasemdFraKennara) {
        this.athugasemdFraKennara = athugasemdFraKennara;
    }

    public List<Project> getOpenProjects() {
        return openProjects;
    }

    public void setOpenProjects(List<Project> openProjects) {
        this.openProjects = openProjects;
    }

    public List<Project> getClosedProjects() {
        return closedProjects;
    }

    public void setClosedProjects(List<Project> closedProjects) {
        this.closedProjects = closedProjects;
    }

    public int getAfangi_id() {
        return afangi_id;
    }

    public void setAfangi_id(int afangi_id) {
        this.afangi_id = afangi_id;
    }

    public Date getBeginDateFormat() {
        return beginDateFormat;
    }

    public void setBeginDateFormat(Date beginDateFormat) {
        this.beginDateFormat = beginDateFormat;
    }

    public Date getHandinDateFormat() {
        return handinDateFormat;
    }

    public void setHandinDateFormat(Date handinDateFormat) {
        this.handinDateFormat = handinDateFormat;
    }

    public int getHopur_id() {
        return hopur_id;
    }

    public void setHopur_id(int hopur_id) {
        this.hopur_id = hopur_id;
    }

    public Boolean getGradePublished() {
        return gradePublished;
    }

    public void setGradePublished(Boolean gradePublished) {
        this.gradePublished = gradePublished;
    }
}
